package com.rgs.platform.test;

import com.rgs.base.database.sql.LikeTypeEnum;
import com.rgs.base.database.sql.SqlConditionEnum;

import java.lang.annotation.*;

/**
 * 自定义注解，目的是为了拼接SQL条件
 */
@Target({ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
public @interface RgsSqlAnno {

    /**
     * 字段的匹配模式（全匹配，后匹配，模糊匹配）
     *
     * @return
     */
    LikeTypeEnum likeType() default LikeTypeEnum.NONE;

    /**
     * 字段对应的字段
     *
     * @return
     */
    String columnName() default "";

    /**
     * 匹配范围（等于，正则,大于，小于，大于等于，小于等于）
     *
     * @return
     */
    SqlConditionEnum sqlCondition() default SqlConditionEnum.EQUAL;

    /**
     * 自定义条件
     *
     * @return
     */
    String[] customConditions() default {};
}
